<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<title>Synoptic Hierarchy</title>
<link href="../docs-assets/Breadcrumbs.css" rel="stylesheet" rev="stylesheet" type="text/css">
		<meta name="viewport" content="width=device-width initial-scale=1">
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
		<meta http-equiv="Content-Language" content="en-gb">

<link href="../docs-assets/Contents.css" rel="stylesheet" rev="stylesheet" type="text/css">
<link href="../docs-assets/Progress.css" rel="stylesheet" rev="stylesheet" type="text/css">
<link href="../docs-assets/Navigation.css" rel="stylesheet" rev="stylesheet" type="text/css">
<link href="../docs-assets/Fonts.css" rel="stylesheet" rev="stylesheet" type="text/css">
<link href="../docs-assets/Base.css" rel="stylesheet" rev="stylesheet" type="text/css">
<script>
function togglePopup(material_id) {
  var popup = document.getElementById(material_id);
  popup.classList.toggle("show");
}
</script>

<link href="../docs-assets/Popups.css" rel="stylesheet" rev="stylesheet" type="text/css">
<link href="../docs-assets/Colours.css" rel="stylesheet" rev="stylesheet" type="text/css">
		
	</head>
	<body class="commentary-font">
		<nav role="navigation">
		<h1><a href="../index.html"><img src="../docs-assets/Inform.png" height=72> </a></h1>
<ul><li><a href="../index.html">home</a></li>
</ul><h2>Compiler</h2><ul>
<li><a href="../structure.html">structure</a></li>
<li><a href="../inbuildn.html">inbuild</a></li>
<li><a href="../inform7n.html">inform7</a></li>
<li><a href="../intern.html">inter</a></li>
<li><a href="../services.html">services</a></li>
<li><a href="../secrets.html">secrets</a></li>
</ul><h2>Other Tools</h2><ul>
<li><a href="../inblorbn.html">inblorb</a></li>
<li><a href="../inform6.html">inform6</a></li>
<li><a href="../inpolicyn.html">inpolicy</a></li>
</ul><h2>Resources</h2><ul>
<li><a href="../extensions.html">extensions</a></li>
<li><a href="../kits.html">kits</a></li>
</ul><h2>Repository</h2><ul>
<li><a href="https://github.com/ganelson/inform"><img src="../docs-assets/github.png" height=0> github</a></li>
</ul><h2>Related Projects</h2><ul>
<li><a href="https://github.com/ganelson/inweb"><img src="../docs-assets/github.png" height=0> inweb</a></li>
<li><a href="https://github.com/ganelson/intest"><img src="../docs-assets/github.png" height=0> intest</a></li>
</ul>
		</nav>
		<main role="main">
		<!-- Weave of 'Synoptic Hierarchy' generated by inweb -->
<div class="breadcrumbs">
    <ul class="crumbs"><li><a href="../index.html">Home</a></li><li><a href="../intern.html">Inter Modules</a></li><li><a href="index.html">pipeline</a></li><li><a href="index.html#5">Chapter 5: Synoptic Module</a></li><li><b>Synoptic Hierarchy</b></li></ul></div>
<p class="purpose">The layout and naming conventions for the contents of the main/synoptic module.</p>

<ul class="toc"><li><a href="5-sh.html#SP1_1">&#167;1.1. Actions</a></li><li><a href="5-sh.html#SP1_2">&#167;1.2. Activities</a></li><li><a href="5-sh.html#SP1_3">&#167;1.3. Chronology</a></li><li><a href="5-sh.html#SP1_4">&#167;1.4. Conjugations</a></li><li><a href="5-sh.html#SP1_5">&#167;1.5. Dialogue</a></li><li><a href="5-sh.html#SP1_6">&#167;1.6. Extensions</a></li><li><a href="5-sh.html#SP1_7">&#167;1.7. Instances</a></li><li><a href="5-sh.html#SP1_8">&#167;1.8. Kinds</a></li><li><a href="5-sh.html#SP1_9">&#167;1.9. Multimedia</a></li><li><a href="5-sh.html#SP1_10">&#167;1.10. Properties</a></li><li><a href="5-sh.html#SP1_11">&#167;1.11. Relations</a></li><li><a href="5-sh.html#SP1_12">&#167;1.12. Rulebooks</a></li><li><a href="5-sh.html#SP1_13">&#167;1.13. Rules</a></li><li><a href="5-sh.html#SP1_14">&#167;1.14. Scenes</a></li><li><a href="5-sh.html#SP1_15">&#167;1.15. Tables</a></li><li><a href="5-sh.html#SP1_16">&#167;1.16. Tests</a></li><li><a href="5-sh.html#SP1_17">&#167;1.17. Use options</a></li><li><a href="5-sh.html#SP3">&#167;3. Synoptic printing functions</a></li></ul><hr class="tocbar">

<p class="commentary firstcommentary"><a id="SP1" class="paragraph-anchor"></a><b>&#167;1. </b>This section gives a map of what resources will be made in the synoptic
module. The definitions here enable code generated by <a href="../inform7/index.html" class="internal">inform7</a> or <a href="../inter/index.html" class="internal">inter</a>
to call functions or use constants defined in the synoptic module, and also
allow them to be referred to from kits linked in.
</p>

<p class="commentary">Because the synoptic module exists only to provide resources, this section is
in effect a specification for it.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">SYNOPTIC_HIERARCHY_MADE_ITHBIT</span>
</pre>
<pre class="displayed-code all-displayed-code code-font">
<span class="reserved-syntax">void</span><span class="plain-syntax"> </span><span class="function-syntax">SynopticHierarchy::establish</span><button class="popup" onclick="togglePopup('usagePopup1')"><span class="comment-syntax">?</span><span class="popuptext" id="usagePopup1">Usage of <span class="code-font"><span class="function-syntax">SynopticHierarchy::establish</span></span>:<br/>Make Synoptic Module Stage - <a href="5-msms.html#SP1">&#167;1</a></span></button><span class="plain-syntax">(</span><span class="identifier-syntax">inter_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">I</span><span class="plain-syntax">) {</span>
<span class="plain-syntax">    </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">InterTree::test_history</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="plain-syntax">, </span><span class="constant-syntax">SYNOPTIC_HIERARCHY_MADE_ITHBIT</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="identifier-syntax">InterTree::set_history</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="plain-syntax">, </span><span class="constant-syntax">SYNOPTIC_HIERARCHY_MADE_ITHBIT</span><span class="plain-syntax">);</span>
<span class="plain-syntax">    </span><span class="identifier-syntax">location_requirement</span><span class="plain-syntax"> </span><span class="identifier-syntax">req</span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_1" class="named-paragraph-link"><span class="named-paragraph">Resources for actions</span><span class="named-paragraph-number">1.1</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_2" class="named-paragraph-link"><span class="named-paragraph">Resources for activities</span><span class="named-paragraph-number">1.2</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_3" class="named-paragraph-link"><span class="named-paragraph">Resources for chronology</span><span class="named-paragraph-number">1.3</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_4" class="named-paragraph-link"><span class="named-paragraph">Resources for conjugations</span><span class="named-paragraph-number">1.4</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_5" class="named-paragraph-link"><span class="named-paragraph">Resources for dialogue</span><span class="named-paragraph-number">1.5</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_6" class="named-paragraph-link"><span class="named-paragraph">Resources for extensions</span><span class="named-paragraph-number">1.6</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_7" class="named-paragraph-link"><span class="named-paragraph">Resources for instances</span><span class="named-paragraph-number">1.7</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_8" class="named-paragraph-link"><span class="named-paragraph">Resources for kinds</span><span class="named-paragraph-number">1.8</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_9" class="named-paragraph-link"><span class="named-paragraph">Resources for multimedia</span><span class="named-paragraph-number">1.9</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_10" class="named-paragraph-link"><span class="named-paragraph">Resources for properties</span><span class="named-paragraph-number">1.10</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_11" class="named-paragraph-link"><span class="named-paragraph">Resources for relations</span><span class="named-paragraph-number">1.11</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_12" class="named-paragraph-link"><span class="named-paragraph">Resources for rulebooks</span><span class="named-paragraph-number">1.12</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_13" class="named-paragraph-link"><span class="named-paragraph">Resources for rules</span><span class="named-paragraph-number">1.13</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_14" class="named-paragraph-link"><span class="named-paragraph">Resources for scenes</span><span class="named-paragraph-number">1.14</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_15" class="named-paragraph-link"><span class="named-paragraph">Resources for tables</span><span class="named-paragraph-number">1.15</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_16" class="named-paragraph-link"><span class="named-paragraph">Resources for tests</span><span class="named-paragraph-number">1.16</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">    </span><span class="named-paragraph-container code-font"><a href="5-sh.html#SP1_17" class="named-paragraph-link"><span class="named-paragraph">Resources for use options</span><span class="named-paragraph-number">1.17</span></a></span><span class="plain-syntax">;</span>
<span class="plain-syntax">}</span>
</pre>
<p class="commentary firstcommentary"><a id="SP2" class="paragraph-anchor"></a><b>&#167;2. </b>The notation here is a little cryptic, but see <a href="../runtime-module/2-hrr.html" class="internal">Hierarchy (in runtime)</a> for a
fuller explanation.
</p>

<pre class="definitions code-font"><span class="definition-keyword">define</span> <span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">r</span><span class="plain-syntax">)</span>
<span class="plain-syntax">    </span><span class="identifier-syntax">req</span><span class="plain-syntax"> = </span><span class="identifier-syntax">LocationRequirements::synoptic_submodule</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="plain-syntax">, </span><span class="identifier-syntax">LargeScale::register_submodule_identity</span><span class="plain-syntax">(</span><span class="identifier-syntax">r</span><span class="plain-syntax">));</span>
<span class="definition-keyword">define</span> <span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="identifier-syntax">id</span><span class="plain-syntax">, </span><span class="identifier-syntax">n</span><span class="plain-syntax">) {</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">HierarchyLocations::con</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="plain-syntax">, </span><span class="identifier-syntax">id</span><span class="plain-syntax">, </span><span class="identifier-syntax">n</span><span class="plain-syntax">, </span><span class="identifier-syntax">req</span><span class="plain-syntax">);</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">inter_name</span><span class="plain-syntax"> *</span><span class="identifier-syntax">iname</span><span class="plain-syntax"> = </span><span class="identifier-syntax">HierarchyLocations::iname</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="plain-syntax">, </span><span class="identifier-syntax">id</span><span class="plain-syntax">);</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">inter_symbol</span><span class="plain-syntax"> *</span><span class="identifier-syntax">S</span><span class="plain-syntax"> = </span><span class="identifier-syntax">InterNames::to_symbol</span><span class="plain-syntax">(</span><span class="identifier-syntax">iname</span><span class="plain-syntax">);</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">Wiring::socket</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="plain-syntax">, </span><span class="identifier-syntax">InterNames::to_text</span><span class="plain-syntax">(</span><span class="identifier-syntax">iname</span><span class="plain-syntax">), </span><span class="identifier-syntax">S</span><span class="plain-syntax">);</span>
<span class="plain-syntax">    }</span>
<span class="definition-keyword">define</span> <span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="identifier-syntax">id</span><span class="plain-syntax">, </span><span class="identifier-syntax">n</span><span class="plain-syntax">, </span><span class="identifier-syntax">t</span><span class="plain-syntax">) {</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">HierarchyLocations::fun</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="plain-syntax">, </span><span class="identifier-syntax">id</span><span class="plain-syntax">, </span><span class="identifier-syntax">n</span><span class="plain-syntax">, </span><span class="identifier-syntax">Translation::to</span><span class="plain-syntax">(</span><span class="identifier-syntax">t</span><span class="plain-syntax">), </span><span class="identifier-syntax">req</span><span class="plain-syntax">);</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">inter_name</span><span class="plain-syntax"> *</span><span class="identifier-syntax">iname</span><span class="plain-syntax"> = </span><span class="identifier-syntax">HierarchyLocations::iname</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="plain-syntax">, </span><span class="identifier-syntax">id</span><span class="plain-syntax">);</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">inter_symbol</span><span class="plain-syntax"> *</span><span class="identifier-syntax">S</span><span class="plain-syntax"> = </span><span class="identifier-syntax">InterNames::to_symbol</span><span class="plain-syntax">(</span><span class="identifier-syntax">iname</span><span class="plain-syntax">);</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">Wiring::socket</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="plain-syntax">, </span><span class="identifier-syntax">InterNames::get_translation</span><span class="plain-syntax">(</span><span class="identifier-syntax">iname</span><span class="plain-syntax">), </span><span class="identifier-syntax">S</span><span class="plain-syntax">);</span>
<span class="plain-syntax">    }</span>
</pre>
<p class="commentary firstcommentary"><a id="SP1_1" class="paragraph-anchor"></a><b>&#167;1.1. Actions.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/actions</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">ACTIONCODING_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">ACTIONDATA_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">ACTIONHAPPENED_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">AD_RECORDS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">CCOUNT_ACTION_NAME_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">DB_ACTION_DETAILS_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for actions</span><span class="named-paragraph-number">1.1</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"actions"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">ACTIONCODING_HL</span><span class="plain-syntax">,                </span><span class="identifier-syntax">I</span><span class="string-syntax">"ActionCoding"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">ACTIONDATA_HL</span><span class="plain-syntax">,                  </span><span class="identifier-syntax">I</span><span class="string-syntax">"ActionData"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">ACTIONHAPPENED_HL</span><span class="plain-syntax">,              </span><span class="identifier-syntax">I</span><span class="string-syntax">"ActionHappened"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">AD_RECORDS_HL</span><span class="plain-syntax">,                  </span><span class="identifier-syntax">I</span><span class="string-syntax">"AD_RECORDS"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">CCOUNT_ACTION_NAME_HL</span><span class="plain-syntax">,          </span><span class="identifier-syntax">I</span><span class="string-syntax">"CCOUNT_ACTION_NAME"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">DB_ACTION_DETAILS_HL</span><span class="plain-syntax">,           </span><span class="identifier-syntax">I</span><span class="string-syntax">"DB_Action_Details_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"DB_Action_Details"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_2" class="paragraph-anchor"></a><b>&#167;1.2. Activities.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/activities</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">ACTIVITY_AFTER_RULEBOOKS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">ACTIVITY_BEFORE_RULEBOOKS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">ACTIVITY_FOR_RULEBOOKS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">ACTIVITY_FLAGS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">ACTIVITY_VAR_CREATORS_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for activities</span><span class="named-paragraph-number">1.2</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"activities"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">ACTIVITY_AFTER_RULEBOOKS_HL</span><span class="plain-syntax">,    </span><span class="identifier-syntax">I</span><span class="string-syntax">"Activity_after_rulebooks"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">ACTIVITY_BEFORE_RULEBOOKS_HL</span><span class="plain-syntax">,   </span><span class="identifier-syntax">I</span><span class="string-syntax">"Activity_before_rulebooks"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">ACTIVITY_FOR_RULEBOOKS_HL</span><span class="plain-syntax">,      </span><span class="identifier-syntax">I</span><span class="string-syntax">"Activity_for_rulebooks"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">ACTIVITY_VAR_CREATORS_HL</span><span class="plain-syntax">,       </span><span class="identifier-syntax">I</span><span class="string-syntax">"activity_var_creators"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">ACTIVITY_FLAGS_HL</span><span class="plain-syntax">,              </span><span class="identifier-syntax">I</span><span class="string-syntax">"Activity_flags"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_3" class="paragraph-anchor"></a><b>&#167;1.3. Chronology.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/chronology</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">TIMEDEVENTSTABLE_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">TIMEDEVENTTIMESTABLE_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">PASTACTIONSI6ROUTINES_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">NO_PAST_TENSE_CONDS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">NO_PAST_TENSE_ACTIONS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">TESTSINGLEPASTSTATE_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for chronology</span><span class="named-paragraph-number">1.3</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"chronology"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">TIMEDEVENTSTABLE_HL</span><span class="plain-syntax">,            </span><span class="identifier-syntax">I</span><span class="string-syntax">"TimedEventsTable"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">TIMEDEVENTTIMESTABLE_HL</span><span class="plain-syntax">,        </span><span class="identifier-syntax">I</span><span class="string-syntax">"TimedEventTimesTable"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">PASTACTIONSI6ROUTINES_HL</span><span class="plain-syntax">,       </span><span class="identifier-syntax">I</span><span class="string-syntax">"PastActionsI6Routines"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">NO_PAST_TENSE_CONDS_HL</span><span class="plain-syntax">,         </span><span class="identifier-syntax">I</span><span class="string-syntax">"NO_PAST_TENSE_CONDS"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">NO_PAST_TENSE_ACTIONS_HL</span><span class="plain-syntax">,       </span><span class="identifier-syntax">I</span><span class="string-syntax">"NO_PAST_TENSE_ACTIONS"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">TESTSINGLEPASTSTATE_HL</span><span class="plain-syntax">,         </span><span class="identifier-syntax">I</span><span class="string-syntax">"test_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"TestSinglePastState"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_4" class="paragraph-anchor"></a><b>&#167;1.4. Conjugations.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/conjugations</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">TABLEOFVERBS_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for conjugations</span><span class="named-paragraph-number">1.4</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"conjugations"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">TABLEOFVERBS_HL</span><span class="plain-syntax">,                </span><span class="identifier-syntax">I</span><span class="string-syntax">"TableOfVerbs"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_5" class="paragraph-anchor"></a><b>&#167;1.5. Dialogue.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/dialogue</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">DIALOGUEBEATS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">DIALOGUELINES_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">DIALOGUECHOICES_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">NO_DIALOGUE_BEATS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">NO_DIALOGUE_LINES_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">NO_DIALOGUE_CHOICES_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for dialogue</span><span class="named-paragraph-number">1.5</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"dialogue"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">DIALOGUEBEATS_HL</span><span class="plain-syntax">,               </span><span class="identifier-syntax">I</span><span class="string-syntax">"TableOfDialogueBeats"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">DIALOGUELINES_HL</span><span class="plain-syntax">,               </span><span class="identifier-syntax">I</span><span class="string-syntax">"TableOfDialogueLines"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">DIALOGUECHOICES_HL</span><span class="plain-syntax">,             </span><span class="identifier-syntax">I</span><span class="string-syntax">"TableOfDialogueChoices"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">NO_DIALOGUE_BEATS_HL</span><span class="plain-syntax">,           </span><span class="identifier-syntax">I</span><span class="string-syntax">"NO_DIALOGUE_BEATS"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">NO_DIALOGUE_LINES_HL</span><span class="plain-syntax">,           </span><span class="identifier-syntax">I</span><span class="string-syntax">"NO_DIALOGUE_LINES"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">NO_DIALOGUE_CHOICES_HL</span><span class="plain-syntax">,         </span><span class="identifier-syntax">I</span><span class="string-syntax">"NO_DIALOGUE_CHOICES"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_6" class="paragraph-anchor"></a><b>&#167;1.6. Extensions.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/extensions</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">SHOWEXTENSIONVERSIONS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">SHOWFULLEXTENSIONVERSIONS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">SHOWONEEXTENSION_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for extensions</span><span class="named-paragraph-number">1.6</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"extensions"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">SHOWEXTENSIONVERSIONS_HL</span><span class="plain-syntax">,       </span><span class="identifier-syntax">I</span><span class="string-syntax">"showextensionversions_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"ShowExtensionVersions"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">SHOWFULLEXTENSIONVERSIONS_HL</span><span class="plain-syntax">,   </span><span class="identifier-syntax">I</span><span class="string-syntax">"showfullextensionversions_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"ShowFullExtensionVersions"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">SHOWONEEXTENSION_HL</span><span class="plain-syntax">,            </span><span class="identifier-syntax">I</span><span class="string-syntax">"showoneextension_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"ShowOneExtension"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_7" class="paragraph-anchor"></a><b>&#167;1.7. Instances.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/instances</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">SHOWMEINSTANCEDETAILS_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for instances</span><span class="named-paragraph-number">1.7</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"instances"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">SHOWMEINSTANCEDETAILS_HL</span><span class="plain-syntax">,       </span><span class="identifier-syntax">I</span><span class="string-syntax">"showmeinstancedetails_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"ShowMeInstanceDetails"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_8" class="paragraph-anchor"></a><b>&#167;1.8. Kinds.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/kinds</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">DEFAULTVALUEFINDER_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">I7_KIND_NAME_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">SHOWMEKINDDETAILS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">BASE_KIND_HWM_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">RUCKSACK_CLASS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">KINDHIERARCHY_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">KINDMETADATA_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for kinds</span><span class="named-paragraph-number">1.8</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"kinds"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">BASE_KIND_HWM_HL</span><span class="plain-syntax">,               </span><span class="identifier-syntax">I</span><span class="string-syntax">"BASE_KIND_HWM"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">DEFAULTVALUEFINDER_HL</span><span class="plain-syntax">,          </span><span class="identifier-syntax">I</span><span class="string-syntax">"defaultvaluefinder_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"DefaultValueFinder"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">I7_KIND_NAME_HL</span><span class="plain-syntax">,                </span><span class="identifier-syntax">I</span><span class="string-syntax">"printkindname_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"I7_Kind_Name"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">SHOWMEKINDDETAILS_HL</span><span class="plain-syntax">,           </span><span class="identifier-syntax">I</span><span class="string-syntax">"showmekinddetails_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"ShowMeKindDetails"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">RUCKSACK_CLASS_HL</span><span class="plain-syntax">,              </span><span class="identifier-syntax">I</span><span class="string-syntax">"RUCKSACK_CLASS"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">KINDHIERARCHY_HL</span><span class="plain-syntax">,               </span><span class="identifier-syntax">I</span><span class="string-syntax">"KindHierarchy"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">KINDMETADATA_HL</span><span class="plain-syntax">,                </span><span class="identifier-syntax">I</span><span class="string-syntax">"KindMetadata"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_9" class="paragraph-anchor"></a><b>&#167;1.9. Multimedia.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/multimedia</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">RESOURCEIDSOFFIGURES_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">RESOURCEIDSOFSOUNDS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">NO_EXTERNAL_FILES_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">NO_INTERNAL_FILES_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">TABLEOFEXTERNALFILES_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">TABLEOFINTERNALFILES_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for multimedia</span><span class="named-paragraph-number">1.9</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"multimedia"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">RESOURCEIDSOFFIGURES_HL</span><span class="plain-syntax">,        </span><span class="identifier-syntax">I</span><span class="string-syntax">"ResourceIDsOfFigures"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">RESOURCEIDSOFSOUNDS_HL</span><span class="plain-syntax">,         </span><span class="identifier-syntax">I</span><span class="string-syntax">"ResourceIDsOfSounds"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">NO_EXTERNAL_FILES_HL</span><span class="plain-syntax">,           </span><span class="identifier-syntax">I</span><span class="string-syntax">"NO_EXTERNAL_FILES"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">NO_INTERNAL_FILES_HL</span><span class="plain-syntax">,           </span><span class="identifier-syntax">I</span><span class="string-syntax">"NO_INTERNAL_FILES"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">TABLEOFEXTERNALFILES_HL</span><span class="plain-syntax">,        </span><span class="identifier-syntax">I</span><span class="string-syntax">"TableOfExternalFiles"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">TABLEOFINTERNALFILES_HL</span><span class="plain-syntax">,        </span><span class="identifier-syntax">I</span><span class="string-syntax">"TableOfInternalFiles"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_10" class="paragraph-anchor"></a><b>&#167;1.10. Properties.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/properties</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">CCOUNT_PROPERTY_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for properties</span><span class="named-paragraph-number">1.10</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"properties"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">CCOUNT_PROPERTY_HL</span><span class="plain-syntax">,             </span><span class="identifier-syntax">I</span><span class="string-syntax">"CCOUNT_PROPERTY"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_11" class="paragraph-anchor"></a><b>&#167;1.11. Relations.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/relations</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">CREATEDYNAMICRELATIONS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">CCOUNT_BINARY_PREDICATE_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">ITERATERELATIONS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">RPROPERTY_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for relations</span><span class="named-paragraph-number">1.11</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"relations"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">CREATEDYNAMICRELATIONS_HL</span><span class="plain-syntax">,      </span><span class="identifier-syntax">I</span><span class="string-syntax">"creator_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"CreateDynamicRelations"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">CCOUNT_BINARY_PREDICATE_HL</span><span class="plain-syntax">,     </span><span class="identifier-syntax">I</span><span class="string-syntax">"CCOUNT_BINARY_PREDICATE"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">ITERATERELATIONS_HL</span><span class="plain-syntax">,            </span><span class="identifier-syntax">I</span><span class="string-syntax">"iterator_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"IterateRelations"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">RPROPERTY_HL</span><span class="plain-syntax">,                   </span><span class="identifier-syntax">I</span><span class="string-syntax">"property_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"RProperty"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_12" class="paragraph-anchor"></a><b>&#167;1.12. Rulebooks.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/rulebooks</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">NUMBER_RULEBOOKS_CREATED_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">RULEBOOK_VAR_CREATORS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">SLOW_LOOKUP_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">RULEBOOKS_ARRAY_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">RULEBOOKNAMES_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for rulebooks</span><span class="named-paragraph-number">1.12</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"rulebooks"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">NUMBER_RULEBOOKS_CREATED_HL</span><span class="plain-syntax">,    </span><span class="identifier-syntax">I</span><span class="string-syntax">"NUMBER_RULEBOOKS_CREATED"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">RULEBOOK_VAR_CREATORS_HL</span><span class="plain-syntax">,       </span><span class="identifier-syntax">I</span><span class="string-syntax">"rulebook_var_creators"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">SLOW_LOOKUP_HL</span><span class="plain-syntax">,                 </span><span class="identifier-syntax">I</span><span class="string-syntax">"slow_lookup_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"MStack_GetRBVarCreator"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">RULEBOOKS_ARRAY_HL</span><span class="plain-syntax">,             </span><span class="identifier-syntax">I</span><span class="string-syntax">"rulebooks_array"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">RULEBOOKNAMES_HL</span><span class="plain-syntax">,               </span><span class="identifier-syntax">I</span><span class="string-syntax">"RulebookNames"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_13" class="paragraph-anchor"></a><b>&#167;1.13. Rules.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/rules</span></span> and <span class="extract"><span class="extract-syntax">/main/synoptic/responses</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">RULEPRINTINGRULE_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">RESPONSETEXTS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">NO_RESPONSES_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">RESPONSEDIVISIONS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">PRINT_RESPONSE_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for rules</span><span class="named-paragraph-number">1.13</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"rules"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">RULEPRINTINGRULE_HL</span><span class="plain-syntax">,            </span><span class="identifier-syntax">I</span><span class="string-syntax">"print_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"RulePrintingRule"</span><span class="plain-syntax">)</span>

<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"responses"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">RESPONSEDIVISIONS_HL</span><span class="plain-syntax">,           </span><span class="identifier-syntax">I</span><span class="string-syntax">"ResponseDivisions"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">RESPONSETEXTS_HL</span><span class="plain-syntax">,               </span><span class="identifier-syntax">I</span><span class="string-syntax">"ResponseTexts"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">NO_RESPONSES_HL</span><span class="plain-syntax">,                </span><span class="identifier-syntax">I</span><span class="string-syntax">"NO_RESPONSES"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">PRINT_RESPONSE_HL</span><span class="plain-syntax">,              </span><span class="identifier-syntax">I</span><span class="string-syntax">"print_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"PrintResponse"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_14" class="paragraph-anchor"></a><b>&#167;1.14. Scenes.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/scenes</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">SHOWSCENESTATUS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">DETECTSCENECHANGE_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for scenes</span><span class="named-paragraph-number">1.14</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"scenes"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">SHOWSCENESTATUS_HL</span><span class="plain-syntax">,             </span><span class="identifier-syntax">I</span><span class="string-syntax">"show_scene_status_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"ShowSceneStatus"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">DETECTSCENECHANGE_HL</span><span class="plain-syntax">,           </span><span class="identifier-syntax">I</span><span class="string-syntax">"detect_scene_change_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"DetectSceneChange"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_15" class="paragraph-anchor"></a><b>&#167;1.15. Tables.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/tables</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">PRINT_TABLE_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">TABLEOFTABLES_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">TB_BLANKS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">RANKING_TABLE_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">TC_KOV_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for tables</span><span class="named-paragraph-number">1.15</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"tables"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">PRINT_TABLE_HL</span><span class="plain-syntax">,                 </span><span class="identifier-syntax">I</span><span class="string-syntax">"print_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"PrintTableName"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">TABLEOFTABLES_HL</span><span class="plain-syntax">,               </span><span class="identifier-syntax">I</span><span class="string-syntax">"TableOfTables"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">TB_BLANKS_HL</span><span class="plain-syntax">,                   </span><span class="identifier-syntax">I</span><span class="string-syntax">"TB_Blanks"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">RANKING_TABLE_HL</span><span class="plain-syntax">,               </span><span class="identifier-syntax">I</span><span class="string-syntax">"RANKING_TABLE"</span><span class="plain-syntax">)</span>

<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"table_columns"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">TC_KOV_HL</span><span class="plain-syntax">,                      </span><span class="identifier-syntax">I</span><span class="string-syntax">"weak_kind_ID_of_column_entry_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"TC_KOV"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_16" class="paragraph-anchor"></a><b>&#167;1.16. Tests.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/tests</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">TESTSCRIPTSUB_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for tests</span><span class="named-paragraph-number">1.16</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"tests"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">TESTSCRIPTSUB_HL</span><span class="plain-syntax">,               </span><span class="identifier-syntax">I</span><span class="string-syntax">"TestScriptSub_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"TestScriptSub"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP1_17" class="paragraph-anchor"></a><b>&#167;1.17. Use options.</b>The <span class="extract"><span class="extract-syntax">/main/synoptic/use_options</span></span> submodule.
</p>

<pre class="definitions code-font"><span class="definition-keyword">enum</span> <span class="constant-syntax">NO_USE_OPTIONS_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">TESTUSEOPTION_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">PRINT_USE_OPTION_HL</span>
<span class="definition-keyword">enum</span> <span class="constant-syntax">USE_OPTION_VALUES_HL</span>
</pre>
<p class="commentary"><span class="named-paragraph-container code-font"><span class="named-paragraph-defn">Resources for use options</span><span class="named-paragraph-number">1.17</span></span><span class="comment-syntax"> =</span>
</p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">    </span><span class="identifier-syntax">SYN_SUBMD</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="string-syntax">"use_options"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">NO_USE_OPTIONS_HL</span><span class="plain-syntax">,              </span><span class="identifier-syntax">I</span><span class="string-syntax">"NO_USE_OPTIONS"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">TESTUSEOPTION_HL</span><span class="plain-syntax">,               </span><span class="identifier-syntax">I</span><span class="string-syntax">"test_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"TestUseOption"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_FUNCT</span><span class="plain-syntax">(</span><span class="constant-syntax">PRINT_USE_OPTION_HL</span><span class="plain-syntax">,            </span><span class="identifier-syntax">I</span><span class="string-syntax">"print_fn"</span><span class="plain-syntax">, </span><span class="identifier-syntax">I</span><span class="string-syntax">"PrintUseOption"</span><span class="plain-syntax">)</span>
<span class="plain-syntax">        </span><span class="identifier-syntax">SYN_CONST</span><span class="plain-syntax">(</span><span class="constant-syntax">USE_OPTION_VALUES_HL</span><span class="plain-syntax">,           </span><span class="identifier-syntax">I</span><span class="string-syntax">"USE_OPTION_VALUES"</span><span class="plain-syntax">)</span>
</pre>
<ul class="endnotetexts"><li>This code is used in <a href="5-sh.html#SP1">&#167;1</a>.</li></ul>
<p class="commentary firstcommentary"><a id="SP3" class="paragraph-anchor"></a><b>&#167;3. Synoptic printing functions.</b></p>

<pre class="displayed-code all-displayed-code code-font">
<span class="plain-syntax">#</span><span class="identifier-syntax">ifdef</span><span class="plain-syntax"> </span><span class="identifier-syntax">CORE_MODULE</span>
<span class="identifier-syntax">inter_name</span><span class="plain-syntax"> *</span><span class="function-syntax">SynopticHierarchy::printing_function_iname</span><span class="plain-syntax">(</span><span class="identifier-syntax">inter_tree</span><span class="plain-syntax"> *</span><span class="identifier-syntax">I</span><span class="plain-syntax">, </span><span class="identifier-syntax">kind</span><span class="plain-syntax"> *</span><span class="identifier-syntax">K</span><span class="plain-syntax">) {</span>
<span class="plain-syntax">    </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">Kinds::eq</span><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_use_option</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">HierarchyLocations::iname</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="plain-syntax">, </span><span class="constant-syntax">PRINT_USE_OPTION_HL</span><span class="plain-syntax">);</span>
<span class="plain-syntax">    </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">Kinds::eq</span><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_table</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">HierarchyLocations::iname</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="plain-syntax">, </span><span class="constant-syntax">PRINT_TABLE_HL</span><span class="plain-syntax">);</span>
<span class="plain-syntax">    </span><span class="reserved-syntax">if</span><span class="plain-syntax"> (</span><span class="identifier-syntax">Kinds::eq</span><span class="plain-syntax">(</span><span class="identifier-syntax">K</span><span class="plain-syntax">, </span><span class="identifier-syntax">K_response</span><span class="plain-syntax">)) </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">HierarchyLocations::iname</span><span class="plain-syntax">(</span><span class="identifier-syntax">I</span><span class="plain-syntax">, </span><span class="constant-syntax">PRINT_RESPONSE_HL</span><span class="plain-syntax">);</span>
<span class="plain-syntax">    </span><span class="reserved-syntax">return</span><span class="plain-syntax"> </span><span class="identifier-syntax">NULL</span><span class="plain-syntax">;</span>
<span class="plain-syntax">}</span>
<span class="plain-syntax">#</span><span class="identifier-syntax">endif</span>
</pre>
<nav role="progress"><div class="progresscontainer">
    <ul class="progressbar"><li class="progressprev"><a href="5-msms.html">&#10094;</a></li><li class="progresschapter"><a href="P-wtmd.html">P</a></li><li class="progresschapter"><a href="1-pm.html">1</a></li><li class="progresschapter"><a href="2-pp.html">2</a></li><li class="progresschapter"><a href="3-ps.html">3</a></li><li class="progresschapter"><a href="4-lbks.html">4</a></li><li class="progresscurrentchapter">5</li><li class="progresssection"><a href="5-msms.html">msms</a></li><li class="progresscurrent">sh</li><li class="progresssection"><a href="5-su.html">su</a></li><li class="progresssection"><a href="5-ext.html">ext</a></li><li class="progresssection"><a href="5-lt.html">lt</a></li><li class="progresssection"><a href="5-rsp.html">rsp</a></li><li class="progresssection"><a href="5-rls.html">rls</a></li><li class="progresssection"><a href="5-act.html">act</a></li><li class="progresssection"><a href="5-act2.html">act2</a></li><li class="progresssection"><a href="5-ins.html">ins</a></li><li class="progresssection"><a href="5-dlg.html">dlg</a></li><li class="progresssection"><a href="5-knd.html">knd</a></li><li class="progresssection"><a href="5-prp.html">prp</a></li><li class="progresssection"><a href="5-rlt.html">rlt</a></li><li class="progresssection"><a href="5-tbl.html">tbl</a></li><li class="progresssection"><a href="5-chr.html">chr</a></li><li class="progresssection"><a href="5-scn.html">scn</a></li><li class="progresssection"><a href="5-mlt.html">mlt</a></li><li class="progresssection"><a href="5-uo.html">uo</a></li><li class="progresssection"><a href="5-vrb.html">vrb</a></li><li class="progresssection"><a href="5-tst.html">tst</a></li><li class="progresschapter"><a href="6-erms.html">6</a></li><li class="progressnext"><a href="5-su.html">&#10095;</a></li></ul></div>
</nav><!-- End of weave -->

		</main>
	</body>
</html>

